A network typically includes various network devices connected together using network infrastructure devices, such as gateway devices, switches, routers, hubs, repeaters, and so on. Many network devices include hardware and software configured to send and receive packets. In such a device, the sending and the receiving can include determining whether a packet can be forwarded from the device, and if so, where the packet should go. The device may not be connected to the device at the destination address, but the device can send the packet to another network device or network infrastructure device that is on a path to the destination device.
To determine where to send a packet, a network infrastructure device generally processes the packet to determine where the packet is supposed to go, how the packet is going to get there, and/or whether a device has the information it needs to determine what to do with the packet. In this processing of the packet, the device can also determine that the packet should not be forwarded, and instead should be dropped. For example, the device may find that it cannot process the packet for one reason or another, and thus cannot determine a destination to which to forward the packet.
To process a packet, a network infrastructure device can include one or more integrated circuit devices. One of the integrated circuit devices can include circuitry, such as a pipeline, for processing packets. The pipeline can be configured to make a final forwarding decision for a packet, where the forwarding decision can describe whether to forward the packet, where to forward the packet to, and/or a manner in which to forward the packet. Once the device has a final forwarding decision from the pipeline, the network infrastructure device can send the packet into the network, where one or more other network infrastructure devices can further forward the packet to its destination.